#
# Makefile - tron_rx
#
# Author: Charles DuHadway
# email: duhadway@gmail.com

CC=msp430-gcc
CXX=msp430-g++
MCU=msp430g2553

CFLAGS=-mmcu=$(MCU) -Wall

RX=tron_rx
RX_TEST=tron_rx_test
TX=tron_tx
TX_TEST=tron_tx_test
TARGET=bin

all: $(TARGET)/$(RX).elf $(TARGET)/$(TX).elf $(TARGET)/$(RX_TEST).elf $(TARGET)/$(TX_TEST).elf

$(TARGET)/$(RX).elf: $(TARGET)/$(RX).o
	$(CC) $(CFLAGS) -o $(TARGET)/$(RX).elf $(TARGET)/$(RX).o
	msp430-objdump -DS $(TARGET)/$(RX).elf >$(TARGET)/$(RX).lst
	msp430-size $(TARGET)/$(RX).elf

$(TARGET)/$(TX).elf: $(TARGET)/$(TX).o
	$(CC) $(CFLAGS) -o $(TARGET)/$(TX).elf $(TARGET)/$(TX).o
	msp430-objdump -DS $(TARGET)/$(TX).elf >$(TARGET)/$(TX).lst
	msp430-size $(TARGET)/$(TX).elf

$(TARGET)/$(TX_TEST).elf: $(TARGET)/$(TX_TEST).o
	$(CC) $(CFLAGS) -o $(TARGET)/$(TX_TEST).elf $(TARGET)/$(TX_TEST).o
	msp430-objdump -DS $(TARGET)/$(TX_TEST).elf >$(TARGET)/$(TX_TEST).lst
	msp430-size $(TARGET)/$(TX_TEST).elf

$(TARGET)/$(RX_TEST).elf: $(TARGET)/$(RX_TEST).o
	$(CC) $(CFLAGS) -o $(TARGET)/$(RX_TEST).elf $(TARGET)/$(RX_TEST).o
	msp430-objdump -DS $(TARGET)/$(RX_TEST).elf >$(TARGET)/$(RX_TEST).lst
	msp430-size $(TARGET)/$(RX_TEST).elf

$(TARGET)/$(RX).o:	$(RX).c 
	$(CC) $(CFLAGS) -c -o $(TARGET)/$(RX).o $(RX).c

$(TARGET)/$(TX).o:	$(TX).c 
	$(CC) $(CFLAGS) -c -o $(TARGET)/$(TX).o $(TX).c

$(TARGET)/$(TX_TEST).o:	$(TX_TEST).c 
	$(CC) $(CFLAGS) -c -o $(TARGET)/$(TX_TEST).o $(TX_TEST).c

$(TARGET)/$(RX_TEST).o:	$(RX_TEST).c 
	$(CC) $(CFLAGS) -c -o $(TARGET)/$(RX_TEST).o $(RX_TEST).c

install_rx:
	mspdebug -q --force-reset rf2500 "prog $(TARGET)/$(RX).elf"

install_tx:
	mspdebug -q --force-reset rf2500 "prog $(TARGET)/$(TX).elf"

install_tx_test:
	mspdebug -q --force-reset rf2500 "prog $(TARGET)/$(TX_TEST).elf"

install_rx_test:
	mspdebug -q --force-reset rf2500 "prog $(TARGET)/$(RX_TEST).elf"

clean:
	rm -f $(TARGET)/$(RX).o $(TARGET)/$(RX).elf $(TARGET)/$(RX).lst
	rm -f $(TARGET)/$(TX).o $(TARGET)/$(TX).elf $(TARGET)/$(TX).lst
	rm -f $(TARGET)/$(RX_TEST).o $(TARGET)/$(RX_TEST).elf $(TARGET)/$(RX_TEST).lst
	rm -f $(TARGET)/$(TX_TEST).o $(TARGET)/$(TX_TEST).elf $(TARGET)/$(TX_TEST).lst
	mkdir -p $(TARGET)/
